package com.weight.system.project.VO;

import java.io.Serializable;
import cn.afterturn.easypoi.excel.annotation.Excel;
import cn.afterturn.easypoi.excel.annotation.ExcelTarget;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

import lombok.Data;
import com.alibaba.fastjson.annotation.JSONField;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

/**
 * 项目信息表
 */
@Data
public class ProjectInfoVO implements Serializable {

	private static final long serialVersionUID = 2814639517974791520L;

	@Excel(name = "项目id")
	@JSONField(name = "projInfoId")
	private String projInfoId; //项目id

	@Excel(name = "项目名称")
	@NotBlank(message = "项目名称不能为空")
	@JSONField(name = "projInfoName")
	private String projInfoName; //项目名称

	@Excel(name = "项目编号")
	@NotBlank(message = "项目编号不能为空")
	@JSONField(name = "projInfoCode")
	private String projInfoCode; //项目编号

	@Excel(name = "合同编号")
	@JSONField(name = "contCode")
	private String contCode; //合同编号

	@Excel(name = "客户名称")
	@JSONField(name = "clientName")
	private String clientName; //客户名称

	@Excel(name = "客户地址")
	@JSONField(name = "clientAddr")
	private String clientAddr; //客户地址

	@Excel(name = "客户联系人")
	@JSONField(name = "clientCtct")
	private String clientCtct; //客户联系人

	@Excel(name = "客户电话") 
	@JSONField(name = "clientTel")
	private String clientTel; //客户电话

	@Excel(name = "客户邮箱") 
	@JSONField(name = "clientMail")
	private String clientMail; //客户邮箱

	@Excel(name = "客户邮编")
	@JSONField(name = "clientPcode")
	private String clientPcode; //客户邮编

	@Excel(name = "开工日期")
	@JSONField(name = "startDate")
	private String startDate; //开工日期

	@Excel(name = "完工日期")
	@JSONField(name = "endDate")
	private String endDate; //完工日期

	@Excel(name = "付款条件")
	@JSONField(name = "payType")
	private String payType; //付款条件

	@Excel(name = "合同总金额")
	@JSONField(name = "contAmt")
	private BigDecimal contAmt; //合同总金额

	@Excel(name = "最终金额")
	@JSONField(name = "finalAmt")
	private BigDecimal finalAmt; //最终金额

	@Excel(name = "状态")
	@JSONField(name = "projInfoStatus")
	private Integer projInfoStatus; //状态

	@Excel(name = "机构id")
	@JSONField(name = "orgInfoId")
	private String orgInfoId; //机构id

	@JSONField(name = "comTravellerL")
	private String comTravellerL ; //销售代表
	@JSONField(name = "saleSupervisorL")
	private String saleSupervisorL ; //销售主管
	@JSONField(name = "busAffairsL")
	private String busAffairsL ; //商务

	@JSONField(name = "asChiefEngineerL")
	private String asChiefEngineerL ; //副总工程师
	@JSONField(name = "projectManagerL")
	private String projectManagerL ; //项目经理
	@JSONField(name = "projectEngineerL")
	private String projectEngineerL ; //项目工程师
	@JSONField(name = "houseKeeperL")
	private String houseKeeperL ; //仓库管理员

	@JSONField(name = "eIEngineerL")
	private String eIEngineerL ; //维保工程师
  
	
	@JSONField(name = "comTravellerS")
	private String comTravellerS ; //销售代表
	@JSONField(name = "saleSupervisorS")
	private String saleSupervisorS ; //销售主管
	@JSONField(name = "busAffairsS")
	private String busAffairsS ; //商务

	@JSONField(name = "asChiefEngineerS")
	private String asChiefEngineerS ; //副总工程师
	@JSONField(name = "projectManagerS")
	private String projectManagerS ; //项目经理
	@JSONField(name = "projectEngineerS")
	private String projectEngineerS ; //项目工程师
	@JSONField(name = "houseKeeperS")
	private String houseKeeperS ; //仓库管理员

	@JSONField(name = "eIEngineerS")
	private String eIEngineerS ; //维保工程师
	 
	 
	
	@JSONField(name = "comTraveller")
	private List<String> comTraveller;//销售代表
	
	@JSONField(name = "saleSupervisor")
	private List<String> saleSupervisor;//销售主管
	
	@JSONField(name = "busAffairs")	
	private List<String> busAffairs;//商务
	
	@JSONField(name = "asChiefEngineer")
	private List<String> asChiefEngineer;//副总工程师
	
	@JSONField(name = "projectManager")
	private List<String> projectManager;//项目经理
	
	@JSONField(name = "projectEngineer")
	private List<String> projectEngineer;//项目工程师
	
	@JSONField(name = "houseKeeper")
	private List<String> houseKeeper;//仓库管理员
	
	@JSONField(name = "eIEngineer")
	private List<String> eIEngineer;//维保工程师
	
	@JSONField(name = "carS")
	private String carS ; // 
	@JSONField(name = "carL")
	private String carL ; // 
	@JSONField(name = "car")
	private List<String> car;// 车辆
	
	@JSONField(name = "houseS")
	private String houseS ; // 仓库
	@JSONField(name = "houseL")
	private String houseL ; // 仓库
	@JSONField(name = "house")
	private List<String> house;// 
	@JSONField(name = "timeDay")
	private Integer timeDay;
	
	@JSONField(name = "equList")
	private String equList;
	public  ProjectInfoVO(){
		super();
	}

	public  ProjectInfoVO(String projInfoId,String projInfoName,String projInfoCode,String contCode,String clientName,String clientAddr,String clientCtct,String clientTel,String clientMail,String clientPcode,String startDate,String endDate,String payType,BigDecimal contAmt,BigDecimal finalAmt,Integer projInfoStatus,String orgInfoId){
		super();
		this.projInfoId = projInfoId;
		this.projInfoName = projInfoName;
		this.projInfoCode = projInfoCode;
		this.contCode = contCode;
		this.clientName = clientName;
		this.clientAddr = clientAddr;
		this.clientCtct = clientCtct;
		this.clientTel = clientTel;
		this.clientMail = clientMail;
		this.clientPcode = clientPcode;
		this.startDate = startDate;
		this.endDate = endDate;
		this.payType = payType;
		this.contAmt = contAmt;
		this.finalAmt = finalAmt;
		this.projInfoStatus = projInfoStatus;
		this.orgInfoId = orgInfoId;
	}

}